package com.atguigu.servlet;

import jakarta.servlet.ServletException;
import jakarta.servlet.annotation.WebServlet;
import jakarta.servlet.http.Cookie;
import jakarta.servlet.http.HttpServlet;
import jakarta.servlet.http.HttpServletRequest;
import jakarta.servlet.http.HttpServletResponse;

import java.io.IOException;

//10.演示Cookie的使用
@WebServlet("/h10")
public class H10Servlet extends HttpServlet {
    @Override
    protected void service(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
        //此处我们发现客户端给我们发送了sessionID：3603
        //但是这个会话是失效的。理论上讲，服务器要重新创建一个会话对象响应给客户端
        //只不过当前Servlet中用不到Session。因此没有创建

        //此处创建了一个Cookie对象，k：uname  v:jim
        //然后通过响应对象响应给客户端了。
        //那么下一次浏览器给我这个应用发请求（不一定是我这个Servlet），浏览器会自动的将Cookie发送过来
        Cookie cookie = new Cookie("uname","jim");
        //设置存活时长
        cookie.setMaxAge(60*60*24);
        //cookie.setDomain("com");  //domain用于设置域名，如果是同一个域名内部，那么可以不设置
        cookie.setPath("/pro10/h11"); //默认情况下，浏览器会向当前应用中所有的组件自动发送cookie。我们可以通过setPath指定特定的路径才发送Cookie
        resp.addCookie(cookie);
    }
}
